1. Field of the Invention
The present invention concerns the technical field of digital message transmission, and the present invention particularly concerns the technical field of digital radio broadcasting.
2. Description of the Related Art
Error protection mechanisms have been employed for quite some time to recognize and eliminate errors in data transmission. By the employment of digital radio broadcasting systems, many sources of errors of the analog systems could be excluded. Transmission errors, however, cannot be avoided. Radio transmission systems are generally more disturbance-prone than cable-bound systems, since the influences of the environment during the transmission path have some effect and influence the signal quality more, and an additional request for data is not possible owing to unidirectionality of these systems. Transmission errors may cause a loss of parts of the message, and hence a reception failure. With singular disturbances, reception of the message may also occur in errored and hence corrupted form.
Error protection coding is employed to minimize the effects of reception errors arising through disturbances during the transmission, and thus protect the data. In this, there are two different error protection mechanisms. While only errors can be recognized in the error recognition, with the error correction or a forward error correction (FEC) it is possible to eliminate reception errors without additionally re-transmitting the data.
It is disadvantageous in both mechanisms that they always require additional bandwidth to transmit the redundant information for error detection or error correction. For a channel of fixed bandwidth, the available useful data rate reduces correspondingly.
Furthermore, it could be seen that burst errors also have an especially serious effect in digital transmission systems, apart from the single errors occurring frequently.
Considering real mobile reception, the probability of burst errors still increases. With bad reception, through shadowing of the signal by buildings, mountains, or vegetation, or when driving through a tunnel, several digital data groups (blocks of several bytes) may be lost consecutively.
By the error correction algorithms, which are being standardized in the digital radio broadcasting standard DAB (digital audio broadcasting), of the lower transport layers (for example the OSI layer DataLink), single bit errors within a digital data group or MSC (main service channel) data group may be eliminated, whereas longer-lasting reception errors in temporally successive MSC data groups (developed by the shadowing, for example) cannot be corrected with the same. For this reason, in the provision of error protection for the DAB-used MOT (multimedia object transfer) protocol, particularly the burst errors should be taken into account.
Since in FEC algorithms only a certain number of symbol errors can be corrected per code word, it may happen, when several transmission errors occur consecutively, that too many symbols within a code word are disturbed, and reconstruction of the entire code word is impossible. Such a problem may for example be eliminated by the use of an interleaver, as described in greater detail in the publication “Realization of Optimum Interleavers” by John L. Ramsey (IEEE Transactions on Information Theory, vol. IT-16, no. 3, May 1970).
Using an interleaver, the symbols are then no longer taken from the data stream successively for the formation of a code word, but symbols at the interval of the respective interleaving distance are combined into a code word. From this message code word, redundancy symbols necessary for error protection coding may then be formed in a further step. With this technique, the effects of a burst error, i.e. the disturbance of several successive symbols, are minimized. In FIGS. 10A and 10B, the functionality of such an interleaver is illustrated in greater detail on the basis of a formation of a redundancy symbol from a message word of five symbols length at a reconstruction capability of one lost symbol per code word. The case illustrated in FIG. 10A corresponds to the formation of the redundancy symbols from successive code symbols without interleaving. The striped region here represents a burst error destroying two code symbols each of successive code words. With the reconstruction capability assumed here, the two destroyed code words cannot be restored here anymore on the reception side in spite of error correction mechanisms, because two symbols each have been destroyed in both, but only one could be corrected.
In contrast, the case illustrated in FIG. 10B exemplifies the occurrence of the same burst error, but here using the technique of interleaving in code word formation. The individual symbols of a code word no longer correspond to successive symbols in the data stream. By virtual re-sorting of the symbols, symbols at the interval of the interleaving distance are chosen for the formation of a code word and thus for the generation of a redundancy symbol. The occurring burst error destroys a maximum of one code symbol each in four different code words in this example. These can be restored with the aid of the redundancy symbols and the error protection algorithm used on the reception side.
The forward error correction (FEC) is disadvantageous in that additional bandwidth is always necessary to be able to transmit the redundant information for error detection and/or error correction. For a channel of fixed bandwidth, the available useful data rate therefore reduces correspondingly. With reference to the interleaver, it is to be noted that also a certain latency of the transmission always is to be taken into account in the receiver by the re-sorting of the data, which may lead to a great delay not accepted by users for streaming applications, such as video, for example.
As already mentioned above, forward error correction (FEC) data typically protect a fixed number of bytes. This is done so as to be able to easily discriminate the useful data from the FEC data. The known fixed number of useful data is sent out, then the FEC data should come, then again useful data, and so on. It is important to point to the fact that the forward error correction is employed if a disturbance of the data has to be reckoned with. This simple FEC approach also enables to still differentiate between useful data and FEC data in the case of much data being disturbed.
If data is transmitted using several protocol layers, the data is combined into data groups on the higher protocol layers, and these data groups are transmitted in bit-wise or byte-wise manner on lower protocol layers. On the data group level (i.e. for example in the higher OSI (open system interconnection) protocol layers), most of the time no disturbed data occurs. If a transmission error has disturbed a byte in a lower protocol layer (and the error protection cannot correct this on this protocol level below the data groups), this will lead to the complete data group being discarded for example due to a CRC error this disturbed byte contained. On the data group level, no disturbed data groups occur, but complete (relatively long) data blocks may be missing.
Thus, on the data group level, it is necessary to recognize and correct the loss of one or more data groups. It is a problem here that the length of data groups in the different transfer protocols may be variable, i.e. it is no longer as easy to generate the FEC data after a fixed number of bytes or apply it on the reception side. Moreover, not only the loss of a series of data groups should be recognized on the reception side, but it should be exactly determinable which data groups have been lost in which length in a transmission. It should then be possible to reconstruct as many of these lost data groups as possible.
Furthermore, it is to be noted that the data rate on the data group level is variable, and several data service applications typically share a transmission channel. In other words, this means that an approach in which a fixed number of data is taken from the channel as useful data and/or as FEC data is not applicable here. The forward error correction algorithm does not “see” all the data on the reception side, but only that undoubtedly received for a certain data service (since for example with correct checksums in subordinate transfer protocol layers).